var log = console.log.bind(console);

//$(document).ready(function(){__main();});
$(function() {__main();});
window.currentDir = "";

function __main(){
	
    // 初始化表格
    var oTable = new BSTable();
    oTable.init();

    // 初始化文件树
	var treeView = new TreeView();
	treeView.init();
	
	//
	var tbar = new Toolbar();
	tbar.init();

	//初始化模态框
    uploadInit();
    
}



/**
 * 文件上传的初始化方法
 * 
 * @returns
 */
function uploadInit() {
	
	$('#fileupload-modal').fileupload({
        dataType: 'json',
 
        done: function (e, data) {
            $("tr:has(td)").remove();
            $.each(data.result, function (index, file) {
 
                $("#uploaded-files").append(
                        $('<tr/>')
                        .append($('<td/>').text(file.fileName))
                        .append($('<td/>').text(file.fileSize))
                        .append($('<td/>').text(file.fileType))
                        .append($('<td/>').html("<a href='files/get/"+index+"'>Click</a>"))
                        )// end $("#uploaded-files").append()
            }); 
        },
 
        progressall: function (e, data) {
            var progress = parseInt(data.loaded / data.total * 100, 10);
            $('#progress .bar').css(
                'width',
                progress + '%'
            );
        },
 
        dropZone: $('#dropzone')
    });
}
// -----------工具方法------------------------------------------------------------------------
// 对Date的扩展，将 Date 转化为指定格式的String
// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符，
// 年(y)可以用 1-4 个占位符，毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
// 例子：
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
// (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
Date.prototype.Format = function (fmt) { // author: meizz
    var o = {
        "M+": this.getMonth() + 1, // 月份
        "d+": this.getDate(), // 日
        "h+": this.getHours(), // 小时
        "m+": this.getMinutes(), // 分
        "s+": this.getSeconds(), // 秒
        "q+": Math.floor((this.getMonth() + 3) / 3), // 季度
        "S": this.getMilliseconds() // 毫秒
    };
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    }
    for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) 
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}
// 将字节转换为合适的大小
function convertBytes(value){
	// B/KB/KB/MB/GB/TB 转换字节大小
	var unit = ['B','KB','MB','GB','TB'];
	var i = 0; 
	while(value>1024){
		value/=1024;
		i++ ;
	}
	return value.toFixed(2) + unit[i];
}

function enterDir(currentDir) {
	var urlStr = "file/list";
	var dirs = new Array();
	if(currentDir != ""){
		dirs = currentDir.split('/');
	}
	console.log(currentDir)
	$.ajax({
        type: "get",
        url: urlStr,
        data: {dir : currentDir}, 
        dataType:"json",
        success : function(json) {
           $("#table").bootstrapTable('load', json);// 主要是要这种写法
           // console.log(json.path)
          
       }
    });
	$("#currentDir").empty();
	for ( var i in dirs) {
		$("#currentDir").append("<li>"+dirs[i]+"</li>");
	}
}





